package repositories

import (
	"awesomeProject/rpc/ticket_main_service/models"
	"gorm.io/gorm"
)

// TrainRepository 定义列车相关的数据库操作
type TrainRepository struct {
	DB *gorm.DB
}

// NewTrainRepository 创建一个新的 TrainRepository 实例
func NewTrainRepository(db *gorm.DB) *TrainRepository {
	return &TrainRepository{DB: db}
}

// GetAllTrains 获取所有车次信息
func (r *TrainRepository) GetAllTrains() ([]models.Train, error) {
	var trains []models.Train
	err := r.DB.Find(&trains).Error
	return trains, err
}

// GetTrainByID 根据 ID 获取车次信息
func (r *TrainRepository) GetTrainByID(id uint) (*models.Train, error) {
	var train models.Train
	err := r.DB.First(&train, id).Error
	return &train, err
}
